/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package gradius.Elementos.Naves;

import gradius.InterfaceGrafica.TelaGrafica;
import gradius.Elementos.Tipos.tipoNave;
import java.awt.Image;
import java.awt.Toolkit;
import java.net.URL;

/** Classe Factory que retorna instâncias de upgrades. Também monta o vetor de imagens dos upgrades.
 * @author Eduardo
 */
public class UpgradeFactory
{
    /** Construtor da classe UpgradeFactory
     */
    private UpgradeFactory()
    {
    }

    /** Método que retorna instâncias dos upgrades e monta o vetor de imagens para eles.
     * @param tela - Painel de desenho do jogo
     * @param coordX - Coordenada do eixo horizontal
     * @param coordY - Coordenada do eixo vertical
     */
    public static Upgrade getInstance(TelaGrafica tela, int coordX, int coordY)
    {
        Image[] imagens = new Image[10];
        for (int i = 0; i < imagens.length; i++)
        {
            String filename = "/images/upgrade/u" + i + ".png";
            URL url = NaveFactory.class.getResource(filename);
            imagens[i] = Toolkit.getDefaultToolkit().getImage(url);
        }
        return new Upgrade(tela,imagens,coordX,coordY,50,50);
    }
}
